#pragma once

#include <string>

namespace kratos { namespace engine {

// Protocol header analyzer
class ProtocolAnalyzer {
public:
    // setup gateway session's protocol header format
    // @param analyzer protocol header analyzer format
    //        format like: 2:2l, means total 4 bytes, 2 bytes for length but not include header length
    //                     2:2L, means total 4 bytes, 2 bytes for length include header length
    // @return true or false
    virtual bool setAnalyzer(const std::string& analyzer) = 0;
};

}}
